package com.zhu.char06

/**
 *
 * @version 1.0
 * @author study
 * @date 2020/9/3 16:54
 *
 */
/**
 * 构造器
 * <span>
 * -
 * scala中的构造器
 * - 主构造方法>在声明类的同时定义,一个类中主构造方法只有一个
 * - 辅助构造方法> 方法名称必须叫做this,在辅助构造方法必须间接调用主构造方法
 *
 */
object Scala_Constructor {
  def main(args: Array[String]): Unit = {
    val stu = new Student08("scala")

  }


}

class Student08 {
  println("主构造方法被调用了啊")
  var name: String = _
  var age: Int = _

  //辅助构造方法
  def this(name: String) {
    this()
    println("辅助构造方法1")
    this.name = name
  }

  def this(name: String, age: Int) {
    this(name)
    println("辅助构造方法被调用")
    this.age = age
  }

  //次写法不是构造方法
  def student08(): Unit = {
    println("构造方法被调用了")
  }
}
